package com.littleII.enumber;


/**
 * 软件类型的枚举类。暂定类型为：免费软件|共享软件
 * @author littleII
 *
 */
public enum SoftType {
//	免费软件
	FREE(0,"免费软件"),
//	共享软件
	SHARE(1,"共享软件");

	private int id;
	private String label;	//短标签
	private static SoftType[] allType = SoftType.class.getEnumConstants();	//所有的类别

	/**
	 * @return the id
	 */
	public int getId() {
		return id;
	}

	/**
	 * @param id the id to set
	 */
	public void setId(int id) {
		this.id = id;
	}

	/**
	 * @return the label
	 */
	public String getLabel() {
		return label;
	}

	/**
	 * @param label the label to set
	 */
	public void setLabel(String label) {
		this.label = label;
	}

	/**
	 * 构造方法
	 * @param id
	 * @param label 短标签
	 */
	private SoftType(int id, String label) {
		this.id = id;
		this.label = label;
	}
	/**
	 * 重写toString方法
	 */
	@Override
	public String toString() {
		return label;
	}
	public static SoftType fromInt(int id){
		for (SoftType t : allType) {
			if(id == t.getId()){
				return t;
			}
		}
		return null;
	}
	public static SoftType byLabel(String label) {
		for (SoftType t : allType) {
			if(label.startsWith(t.getLabel())){
				return t;
			}
		}
		return null;
	}
}
